package NowCoder.Mathematics;
import java.util.*;

/**
 * 链接：https://www.nowcoder.com/questionTerminal/0f6976af36324f8bab1ea61e9e826ef5
 * 来源：牛客网
 *
 * 分解因数
 * 时间限制：C/C++ 1秒，其他语言2秒 空间限制：C/C++ 32M，其他语言64M
 * 所谓因子分解，就是把给定的正整数a，分解成若干个素数的乘积，
 * 即 a = a1 × a2 × a3 × ... × an,并且 1 < a1 ≤ a2 ≤ a3 ≤ ... ≤ an。其中a1、a2、...、an均为素数。
 * 先给出一个整数a，请输出分解后的因子。
 *
 * 输入描述:
 * 输入包含多组数据，每组数据包含一个正整数a（2≤a≤1000000）。
 *
 * 输出描述:
 * 对应每组数据，以“a = a1 * a2 * a3...”的形式输出因式分解后的结果。
 * 示例1
 * 输入
 * 10<br/>18
 * 输出
 * 10 = 2 * 5<br/>18 = 2 * 3 * 3
 */
public class 分解因数_编程_2_7_3 {
    //TODO：请重新做这道题
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        while(sc.hasNext()){
            int a = sc.nextInt();
            factorization(a);
        }
    }

    public static void factorization(int a){
        int i = 0;
        System.out.print(a + " =");
        while (a != 0) {
            for (i = 2; i <= a; i++) {
                if (a % i == 0) {
                    System.out.print(" " + i + " ");
                    if (a != i) {
                        System.out.print("*");
                    }
                    break;
                }
            }
            a = a / i;
        }
        System.out.println();
    }
}
